According to the client-server model, a client program running on a user's computer sends a message requesting service to a server program running on another computer. The server responds with a message to the client, the content of which can be a requested file or an indication of availability of the requested file. In exchanging these messages standard protocols are used between clients and servers.
Asynchronous Transfer Mode (ATM) provides the networking infrastructure and high-bandwidth necessary to support many multimedia (video, audio, and data) applications. Such applications are likely to use the client-server architecture. The server will be ATM-attached, so as to present the multimedia content to a large pool of clients. Each client, whether ATM-attached or legacy LAN-attached, knows the name of a server to which it can connect to obtain multimedia service.
The first step in opening communications between a client and a server is to establish a connection from the client to the server. Using Internet Protocol (IP), for example, each host, client or server, has an IP address which uniquely identifies an IP application on the host. IP addresses are layer-3 addresses in the OSI 7-layer model. If a client wants to communicate with a server, it must establish a connection, commonly called a "socket", between itself and the server. In order to build the connection, the client will need to know the IP address of the server.
It is known in the prior art that each host can be identified by a host-name, such as alpha.ho.att.com, which is then translated into an IP address by a so called Domain Name Server (DNS). Currently, DNS table construction, and modifications thereof to include or change the binding (mapping) of the name of a host to it's IP address, is performed manually by system administrators. The DNS tables are static in nature, and are changed only when a) new hosts are added, b) existing hosts are removed, or c) existing hosts are relocated within the network.
When a client must communicate with a server, e.g., named alpha.ho.att.com, if the client does not already have the corresponding IP address for server alpha.ho.att.com stored in its cache, it requests the IP address of server alpha.ho.att.com from the DNS. When the DNS sends the IP address, the client stores the IP address in its cache in association with alpha.ho.att.com and attempts to establish an IP connection to the server. In an ATM network, the server's IP address must also be translated into an ATM address, which is a layer-2 address, i.e., using "Classical IP over ATM" per Bellcore's Request for Comments 1577 (RFC 1577) or ATM Forum's LAN Emulation Over ATM specifications, known as LUNI Version 1.0. Once the ATM address of the server is known, an ATM connection, and an IP connection at a higher layer of the protocol stack, can be built to allow the client to communicate with the server.
In offering a multimedia service, a service provider is likely to offer the service by using several identical servers, each serving a group of clients within a geographic region that are assigned to it. When the client wants to obtain the multimedia service, it accesses it's assigned multimedia server. In current networks such server assignments to clients are fixed.
If a multimedia server a) becomes unable to serve any more clients unless some of the active clients complete their sessions, because it is serving too many clients, or b) becomes unable to serve it's clients due to a system or network failure, a client attempting to establish a connection to the impaired system to obtain multimedia service will get a failure message. This is so even though there may be other servers in the network that can provide the multimedia service.